package com.link.base.base.appduty.dao.mybatis.mapper;

import com.link.base.base.appduty.model.AppDuty;
import com.link.base.base.appduty.model.AppMenu;
import com.link.base.base.common.model.InterObject;
import com.link.base.base.urlinfo.model.UrlInfo;
import com.link.base.base.user.model.User;
import com.link.core.basic.dao.mapper.BasicMapper;

import java.util.List;

/**
 * Copyright  hande Company. All Rights Reserved.
 *
 * @author  unknwon
 * @date:   2018/11/8 13:58
 * @version 1.0
 */

public interface AppDutyMapper extends BasicMapper<AppDuty> {

    List<User> queryDutyOfUserListPage(User record);

    void addUserOfDutyInsert(User user);

    void delUserOfDuty(InterObject record);

    List<UrlInfo> queryUnSelectUrlListPage(UrlInfo urlInfo);

    List<User> queryUnSelectUserListPage(User user);


    /**
     * 根据菜单id查询关联的职责ids
     *
     * @author qinxg
     * @date 2020/7/8
     * @param appMenu 菜单对象
     * @return
     **/
    List<String> queryAppDutyIdsByMenuId(AppMenu appMenu) throws Exception;

    /**
     * 查询未被当前url关联的职责列表
     *
     * @author yaojiangyi
     * @date 2019/02/28 16:53
     * @param record 职责
     */
    public List<AppDuty> queryunSelectAppDutyOfUrlPage(AppDuty record) throws Exception;
}
